package com.swf.seed.spring.resource;

import java.io.IOException;
import java.util.List;

import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.springframework.core.io.ClassPathResource;

/**
 * ClassName: ClasspathResourceTest <br/>
 * Function: TODO ADD FUNCTION. <br/>
 * Reason: TODO ADD REASON(可选). <br/>
 * date: 2014-7-20 下午3:10:03 <br/>
 *
 * @author shenwf10476
 * @version 
 * @since JDK 1.6
 * ClassPathResource 用来访问类加载路径下的资源，相对于其他的 Resource 实现类，其主要优势是方便访问类加载路径里的资源，尤其对于 Web 应用，ClassPathResource 可自动搜索位于 WEB-INF/classes 下的资源文件，无须使用绝对路径访问。
 */
public class ClasspathResourceTest {
public static void main(String[] args) throws DocumentException, IOException {
	 // 创建一个 Resource 对象，指定从文件系统里读取资源
	ClassPathResource ur = new ClassPathResource("classbook.xml");
	 // 获取该资源的简单信息
	 System.out.println(ur.getFilename()); 
	 System.out.println(ur.getDescription()); 
	 System.out.println(ur.getFile().getAbsolutePath()); 
	 // 创建 Dom4j 的解析器
	SAXReader reader = new SAXReader(); 
	 Document doc = reader.read(ur.getFile()); 
	 // 获取根元素
	 Element el = doc.getRootElement(); 
	 System.out.println(el.asXML());
	 List<Element> l = el.elements();
	 for (Element e:l){
		 System.out.println(e.asXML());
	 }
}
}
